// 1. 安装mongoose
// npm i mongoose
// 2. 导入mongoose
const mongoose = require('mongoose');
// 3. 连接mongodb 服务
mongoose.connect('mongodb://127.0.0.1:27017/bilibili');

// 4.设置回调
/**
 * once 绑定事件执行一次
 * on   绑定事件会一直存在
*/
// 设置成功回调
mongoose.connection.once('open', () => {
  console.log('连接成功')
  // 5.创建文档的结构对象(设置对象数据类型格式)
  let BookSchema = new mongoose.Schema({
    name: {
      type: String,
      required: true, //判断该字段必填
      // unique: true//设置该字段独一无二（需要重建集合才有效果）
    },
    author: {
      type: String,
      default: '异名', //默认值
    },
    style: {
      type: String,
      enum: ['言情', '怪兽'],//必须是里面其中一个数据
    },
    price: Number,
  });

  // 6.创建模型对象
  let BookModel = mongoose.model('books', BookSchema);
  for (let i = 1; i <= 10; i++) {
    // 7.新增
    BookModel.create({
      name: '西游记' + i,
      author: '张黑娃' + i,
      style: '言情',
      price: 99.9
    }).then((data,err) => {
      // 失败
      if (err) {
        console.log(err);
        return;
      }
      // 成功
      console.log(data);

      // 8.关闭数据库(项目 运行过程中，不会添加该代码)
      // mongoose.disconnect();
    })
  }




})

// 设置错误回调
mongoose.connection.on('error', () => {

})

// 设置关闭回调
mongoose.connection.on('close', () => {

})

